2
תגובות

שילוב text editor ב form

פתח furybone ,
ראיתי באתר שלך שאתה נותן לערוך טקסט ב form (הוספת תגיות וכדומה)
הסקריפט לרוב יצורממה שערכת תגיות.
איך עבדת עם התגיות הללו? הרי אי אפשר להכניס אותן למסד נתונים.
מצב:
בונה אתר די סטטי עם מערכת backend, האדמין יוכל לשנות נתוני דפים בעזרת המערכת.
במערכת הוא יכנס לדף מהאתר,יקבל את איך שהוא נראה עם תיבות editor (אפשרויות להוספת bold גודל טקסט תמונות וכדומה) בהן הוא יוכל לשנות ולערוך את הטקסט ולהוסיף לשנות תמונות.
כמו ב add מאמר באתר הזה.
אני מנסה להבין איך זה בדיוק עובד מבחינת הform... ובניה מחדש של ה form לשינוי הדף עם העדכון שנוצר.

האם צריך להפריד בין הנתונים ל sql ולשמור את ה template שנוצר? או שיש דרך אחרת?
תודה

2 תשובות

avatar ענה intval ב 12 לאוקטובר 2013 #

למה אי אפשר להכניס אותם למסד נתונים? זה בסה"כ טקסט ואפשר להכניס אותו לאן שתרצה.

מה שקורה כאן באתר זה שהטקסט נשמר במסד עם כל התגיות

[b]למשל [u]ככה[/u][/b]


פעם הבאה שמישהו לוחץ על עריכה, כל הטקסט הזה נשלף ביחד עם התגיות, בדיוק איך שהוא רשום במסד, ומוכנס לתוך textarea ששם שוב פעם אפשר לערוך את הטקסט בצורה המקורית (עם התגיות).

אבל בעמוד תצוגה, שבו הטקסט צריך להראות כמו שצריך, לפני התצוגה עצמה יש פענוח של התגיות שהופכות לקוד html שבסופו של דבר מגיע אל הדפדפן. למשל זה הקוד של האתר שעושה את הטרנספורציה מתגיות ל html

בגלל שלפענח תגיות זה פעולה יחסית כבדה (כן היא מהירה ולוקחת כמה מילישניות בסה"כ, אבל כשיש לך הרבה גולשים במקביל, זה מכביד על השרת) — אפשר להשתמש ב cache בכל מני צורות, אבל נכון לעכשיו אתה יכול לא לדאוג בגלל זה, עד שלא תגיע למצב שיש לך סביבות המאה בקשות לשניה (~ 1000000 צפיות עמוד בחודש).

אופציה נוספת היא כמו ב wordpress או ב book.phpguide.co.il היא להשתמש בעורך html כמו ckeditor שמייצר לך בסוף התהליך html מוכן להכסה למסד או להצגה. הבעיה איתו, שאם אתה מאפשר לערוך עמודים לא רק למנהל האתר, אלה לכל גולש (כמו כאן למשל) — יכולים להכניס לך לתוך ה html הזה הרבה דברים לא יפים.
אבל אם רק מנהל האתר יוכל לערוך עמודים, הייתי ממליץ לך ללכת על ckeditor ולא על תגיות.

avatar ענה furybone ב 12 לאוקטובר 2013 #

תודה!!
ממש עזר